function foo() {
    let a = 1;
    let b = 2;
    var add = function() {
        return this.a + this.b;
    }
    return add()
}

a = 3;
b = 4;

foo.add2 = function() {
    return this.a + this.b
}
console.log(foo()); //7
console.log(foo.add2());//NaN

foo.a = 1;
foo.b = 2;
console.log(foo.add2());//3

// function foo() {
//     let a = 1;
//     let b = 2;
//     var add = function() {
//         return this.a + this.b;
//     }
//     add()
// }
// a = 3;
// b = 4;
// console.log(foo());